<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta http-equiv="Content-Language" content="zh-CN"><title>systemd-journal-remote.service
  中文手册 [金步国]</title><style>
@font-face { font-family: "JinBuGuoWebMono"; src: url("http://www.jinbuguo.com/d/mono.ttf") format("truetype"); }
* { font-family: "JinBuGuoWebMono", "Ubuntu Mono", "Consolas", "Menlo", monospace; }
body { margin:10px; }
h1 { text-align:center; background:#ddd; }
h2#auth_name { text-align:center; margin: 10px 5%; }

    a.headerlink {
      color: #c60f0f;
      font-size: 0.8em;
      padding: 0 4px 0 4px;
      text-decoration: none;
      visibility: hidden;
    }

    a.headerlink:hover {
      background-color: #c60f0f;
      color: white;
    }

    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
      visibility: visible;
    }
</style><script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?d286c55b63a3c54a1e43d10d4c203e75"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><h1>systemd-journal-remote.service 中文手册</h1><h2 id="auth_name">译者：<strong><a href="http://www.jinbuguo.com/">金步国</a></strong></h2><hr><h3>版权声明</h3><p>本文译者是一位开源理念的坚定支持者，所以本文虽然不是软件，但是遵照开源的精神发布。</p><ul><li>无担保：本文译者不保证译文内容准确无误，亦不承担任何由于使用此文档所导致的损失。</li><li>自由使用：任何人都可以自由的<u>阅读/链接/打印</u>此文档，无需任何附加条件。</li><li>名誉权：任何人都可以自由的<u>转载/引用/再创作</u>此文档，但必须保留译者署名并注明出处。</li></ul><h3>其他作品</h3><p>本文译者十分愿意与他人分享劳动成果，如果你对我的其他翻译作品或者技术文章有兴趣，可以在如下位置查看现有的作品集：</p><ul><li><a href="http://www.jinbuguo.com/">金步国作品集</a> [ <a href="http://www.jinbuguo.com/">http://www.jinbuguo.com/</a> ]</li></ul><h3>联系方式</h3><p>由于译者水平有限，因此不能保证译文内容准确无误。如果你发现了译文中的错误(哪怕是错别字也好)，请来信指出，任何提高译文质量的建议我都将虚心接纳。</p><ul><li>Email(QQ)：70171448在QQ邮箱</li></ul><hr><a href="systemd.index.html">手册索引</a> ·
  <a href="systemd.directives.html">指令索引</a><span style="float:right">systemd-241</span><hr><div class="refentry"><a name="systemd-journal-remote"></a><div class="titlepage"></div><div class="refnamediv"><h2>名称</h2><p>systemd-journal-remote.service, systemd-journal-remote.socket, systemd-journal-remote — 通过网络接收远程日志</p></div><div class="refsynopsisdiv"><h2>大纲</h2><p><code class="filename">systemd-journal-remote.service</code></p><p><code class="filename">systemd-journal-remote.socket</code></p><div class="cmdsynopsis"><p><code class="command">/usr/lib/systemd/systemd-journal-remote</code>  [OPTIONS...] [-o/--output=<em class="replaceable"><code>DIR</code></em>|<em class="replaceable"><code>FILE</code></em>] [SOURCES...]</p></div></div><div class="refsect1"><a name="id-1.5"></a><h2 id="描述">描述<a class="headerlink" title="Permalink to this headline" href="systemd-journal-remote.service.html#%E6%8F%8F%E8%BF%B0">¶</a></h2><p><span class="command"><strong>systemd-journal-remote</strong></span> 用于接收经过序列化的远程日志，
    并将其保存到本机的日志池中。输入流必须符合
    <a class="ulink" href="https://www.freedesktop.org/wiki/Software/systemd/export" target="_top">Journal Export Format</a>
    格式，也就是 <span class="command"><strong>journalctl --output=export</strong></span> 命令的输出格式。
    经过序列化之后的日志流一般使用 HTTPS 连接进行网络传输。</p><p>系统服务 <code class="filename">systemd-journal-remote.service</code> 使用
    <span class="command"><strong>systemd-journal-remote</strong></span> 工具监听连接。
    <code class="filename">systemd-journal-remote.socket</code> 用于配置
    <code class="filename">systemd-journal-remote.service</code> 监听的网络地址(默认监听 19532 端口)。
    接受哪些连接、如何存储接收到的日志数据，可以通过
    <a href="journal-remote.conf.html#"><span class="citerefentry"><span class="refentrytitle">journal-remote.conf</span>(5)</span></a>
    配置文件来设置。</p></div><div class="refsect1"><a name="id-1.6"></a><h2 id="日志源(SOURCES)">日志源(SOURCES)<a class="headerlink" title="Permalink to this headline" href="systemd-journal-remote.service.html#%E6%97%A5%E5%BF%97%E6%BA%90(SOURCES)">¶</a></h2><p>
      日志源既可以是"主动源"
      (<span class="command"><strong>systemd-journal-remote</strong></span> 主动向远端发起请求并拉取日志)，
      也可以是"被动源"
      (<span class="command"><strong>systemd-journal-remote</strong></span>
      被动等待远端连接并接收远端推送的日志)。
    </p><p>
      <span class="command"><strong>systemd-journal-remote</strong></span> 能够同时读取多个日志流，
      并将他们存储到输出文件(日志池)中。
      对于"主动源"来说，每一个"源"就是一个日志流；
      对于"被动源"来说，每一个连接就是一个日志流。
      网络套接字可以被配置为
      "accept"模式(单个连接) 或者
      "listen"模式(多个连接，每个连接都是一个日志流)。
    </p><p>
      如果所有连接都已经断开，
      并且不能再创建新连接(没有监听套接字)，那么
      <span class="command"><strong>systemd-journal-remote</strong></span> 将会自动退出。
    </p><p>"主动源"
    可以使用下列方式指定：</p><div class="variablelist"><dl class="variablelist"><dt id="SOURCES"><span class="term">[SOURCES...]</span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#SOURCES">¶</a></dt><dd><p>将 SOURCES 参数设为 <code class="option">-</code>
        表示从标准输入读取日志流。
        将 SOURCES 参数设为文件路径
        表示打开这些文件并从中读取日志流。</p></dd><dt id="--url=ADDRESS"><span class="term"><code class="option">--url=<em class="replaceable"><code>ADDRESS</code></em></code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--url=ADDRESS">¶</a></dt><dd><p>使用
        <code class="option">--url=<em class="replaceable"><code>ADDRESS</code></em></code> 选项，
        表示使用 HTTP 协议从
        <em class="replaceable"><code>ADDRESS</code></em> 读取日志流。
        此处的URL必须指向远程
        <span class="command"><strong>systemd-journal-gatewayd</strong></span>
        实例的根目录(例如 http://some.host:19531/ 或
        https://some.host:19531/)。</p></dd><dt id="--getter='PROG OPTIONS'"><span class="term"><code class="option">--getter='<em class="replaceable"><code>PROG</code></em>  [OPTIONS...]'</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--getter='PROG%20OPTIONS'">¶</a></dt><dd><p>指定用于读取远程日志的外部程序。
        生成的日志流必须发送到标准输出(STDOUT)。</p><p>例子：</p><pre class="programlisting">--getter='curl "-HAccept: application/vnd.fdo.journal" https://some.host:19531/'</pre><pre class="programlisting">--getter='wget --header="Accept: application/vnd.fdo.journal" -O- https://some.host:19531/'</pre></dd></dl></div><p>"被动源"
    可以使用下列方式指定：</p><div class="variablelist"><dl class="variablelist"><dt id="--listen-raw=ADDRESS"><span class="term"><code class="option">--listen-raw=<em class="replaceable"><code>ADDRESS</code></em></code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--listen-raw=ADDRESS">¶</a></dt><dd><p><em class="replaceable"><code>ADDRESS</code></em>
        必须是一个适用于 <code class="option">ListenStream=</code> 的地址(参见
        <a href="systemd.socket.html#"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>)。
        <span class="command"><strong>systemd-journal-remote</strong></span>
        将在此地址的套接字上监听并等待远程连接。
        每一个连接都将被视为一个日志流。</p></dd><dt id="--listen-http=ADDRESS"><span class="term"><code class="option">--listen-http=<em class="replaceable"><code>ADDRESS</code></em></code>, </span><span class="term"><code class="option">--listen-https=<em class="replaceable"><code>ADDRESS</code></em></code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--listen-http=ADDRESS">¶</a></dt><dd><p><em class="replaceable"><code>ADDRESS</code></em> 必须是
        一个负整数("-"后面的整数将被视为文件描述符的编号)，
        或者是一个适用于
         <code class="option">ListenStream=</code> 的地址(参见
        <a href="systemd.socket.html#"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>)。
        对于第一种情况(负整数)，服务器默认在 19532 端口监听，
        匹配的文件描述符必须被
        <code class="varname">$LISTEN_FDS</code>/<code class="varname">$LISTEN_PID</code> 继承。
        对于第二种情况(套接字地址)，将会根据
         <code class="option">--listen-http=</code> 与 <code class="option">--listen-https=</code> 的指示，
        在此端口上启动 HTTP 或 HTTPS 服务。
        目前，仅支持对 <code class="filename">/upload</code> 路径的 POST 请求("<code class="literal">Content-Type:
        application/vnd.fdo.journal</code>")。</p></dd><dt id="$LISTEN_FDS"><span class="term"><code class="varname">$LISTEN_FDS</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#%24LISTEN_FDS">¶</a></dt><dd><p><span class="command"><strong>systemd-journal-remote</strong></span>
        支持
        <code class="varname">$LISTEN_FDS</code>/<code class="varname">$LISTEN_PID</code>
        协议。一般情况下，打开从套接字启动机制继承的套接字，
        与打开上文 <code class="option">--listen-raw=</code> 指定的套接字完全相同。
        但是，如果此变量的值来自于
        <code class="option">--listen-http=-<em class="replaceable"><code>n</code></em></code>
        或
        <code class="option">--listen-https=-<em class="replaceable"><code>n</code></em></code>
        选项的值(负整数)，
        那么将会使用此文件描述符启动 HTTP 或 HTTPS 服务，
        并且必须通过 HTTP 协议建立连接。</p></dd><dt id="--key="><span class="term"><code class="option">--key=</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--key=">¶</a></dt><dd><p>
          PEM 格式的 SSL 私钥文件的路径。
          默认值是 <code class="filename">/etc/ssl/private/journal-remote.pem</code> 。
          此选项仅可与 <code class="option">--listen-https=</code> 一起使用。
        </p></dd><dt id="--cert="><span class="term"><code class="option">--cert=</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--cert=">¶</a></dt><dd><p>
          PEM 格式的 SSL 证书文件的路径。
          默认值是 <code class="filename">/etc/ssl/certs/journal-remote.pem</code> 。
          此选项仅可与 <code class="option">--listen-https=</code> 一起使用。
        </p></dd><dt id="--trust="><span class="term"><code class="option">--trust=</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--trust=">¶</a></dt><dd><p>
          PEM 格式的 SSL CA 证书文件的路径。
          特殊值 <code class="option">all</code> 表示
          禁止检查证书的有效性。
          默认值是 <code class="filename">/etc/ssl/ca/trusted.pem</code> 。
          此选项仅可与 <code class="option">--listen-https=</code> 一起使用。
        </p></dd><dt id="--gnutls-log="><span class="term"><code class="option">--gnutls-log=</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--gnutls-log=">¶</a></dt><dd><p>
          接受一个逗号分隔的 gnutls 日志类别列表。
          此选项可与 <code class="option">--listen-http=</code> 或
          <code class="option">--listen-https=</code> 一起使用。
        </p></dd></dl></div></div><div class="refsect1"><a name="id-1.7"></a><h2 id="日志池">日志池<a class="headerlink" title="Permalink to this headline" href="systemd-journal-remote.service.html#%E6%97%A5%E5%BF%97%E6%B1%A0">¶</a></h2><p>本机上用于保存远程日志的文件或目录被称为"日志池"。具体位置可以通过
     <code class="option">-o</code> 或 <code class="option">--output=</code> 选项指定。
    </p><div class="variablelist"><dl class="variablelist"><dt id="--output=FILE"><span class="term"><code class="option">--output=<em class="replaceable"><code>FILE</code></em></code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--output=FILE">¶</a></dt><dd><p>使用指定的 <em class="replaceable"><code>FILE</code></em> 文件作为保存远程日志的"日志池"。
        文件的名称必须以 <code class="filename">.journal</code> 作为后缀。
        如果指定的文件不存在，那么将会被自动创建。
        在必要的情况下(例如日志文件损坏或大小超限)，
        现有的老日志文件会被按照日志滚动规则改名，
        然后再创建一个全新的日志文件取代它。</p></dd><dt id="--output=DIR"><span class="term"><code class="option">--output=<em class="replaceable"><code>DIR</code></em></code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--output=DIR">¶</a></dt><dd><p>使用指定的 <em class="replaceable"><code>DIR</code></em> 目录作为保存远程日志的"日志池"。
        日志文件将会存储在此目录下。此目录必须是一个已经存在的目录。
        在必要的情况下(例如日志文件损坏或大小超限)，
        现有的老日志文件会被按照日志滚动规则改名，然后再创建一个全新的日志文件取代它。
        对于 <em class="replaceable"><code>DIR</code></em> 目录下日志文件的名称，
        将按照下文所描述的规则生成。</p></dd></dl></div><p>如果未设置 <code class="option">--output=</code> 选项，那么将使用
     <code class="filename">/var/log/journal/remote/</code> 目录作为"日志池"。
    如果没有明确指定日志文件的名称，
    那么将直接在"日志池"目录下创建日志文件，
    并且日志文件将按照
    <code class="filename">remote-<em class="replaceable"><code>hostname</code></em>.journal</code>
    格式命名，其中的 <em class="replaceable"><code>hostname</code></em>
    是经过转义之后的
    日志源主机名(如果无法获取主机名则直接使用IP地址)。</p><p>如果通过 SOURCES 参数或者
     <code class="option">--getter=</code> 选项指定了一个"主动源"，
    那么必须明确设置日志文件的名称。</p></div><div class="refsect1"><a name="id-1.8"></a><h2 id="选项(OPTIONS)">选项(OPTIONS)<a class="headerlink" title="Permalink to this headline" href="systemd-journal-remote.service.html#%E9%80%89%E9%A1%B9(OPTIONS)">¶</a></h2><p>可以使用的命令行选项如下：</p><div class="variablelist"><dl class="variablelist"><dt id="--split-mode"><span class="term"><code class="option">--split-mode</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--split-mode">¶</a></dt><dd><p>设为 <code class="constant">none</code>
        表示仅使用一个单独的日志文件。
        设为 <code class="constant">host</code>
        表示分别为每一个远程主机(日志源)
        使用一个专属的日志文件。</p><p>如果通过 SOURCES 参数或者
        <code class="option">--getter=</code> 选项指定了一个"主动源"，
        那么必须明确设置日志文件的名称，同时必须将此选项设为 <code class="constant">none</code>
        。</p></dd><dt id="--compress [BOOL]"><span class="term"><code class="option">--compress</code> [<em class="replaceable"><code>BOOL</code></em>]</span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--compress%20%5BBOOL%5D">¶</a></dt><dd><p>默认值 "<code class="literal">yes</code>"
        表示将日志流使用 XZ 压缩之后再存储到日志文件中。
        </p></dd><dt id="--seal [BOOL]"><span class="term"><code class="option">--seal</code> [<em class="replaceable"><code>BOOL</code></em>]</span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--seal%20%5BBOOL%5D">¶</a></dt><dd><p>设为 "<code class="literal">yes</code>" 表示
        使用FSS(Forward Secure Sealing)对日志数据进行周期性签名。
        默认值是 "<code class="literal">no</code>"</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#-h">¶</a></dt><dd><p><a name="help-text"></a>显示简短的帮助信息并退出。
    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="systemd-journal-remote.service.html#--version">¶</a></dt><dd><p><a name="version-text"></a>显示简短的版本信息并退出。</p></dd></dl></div></div><div class="refsect1"><a name="id-1.9"></a><h2 id="例子">例子<a class="headerlink" title="Permalink to this headline" href="systemd-journal-remote.service.html#%E4%BE%8B%E5%AD%90">¶</a></h2><p>将本地日志复制到另一个不同的日志目录中：
    </p><pre class="programlisting">
journalctl -o export | systemd-journal-remote -o /tmp/dir/foo.journal -
    </pre><p>
    </p><p>从远程
    <span class="command"><strong>systemd-journal-gatewayd</strong></span>
    实例读取日志流，并将读取到的日志存储在
    <code class="filename">/var/log/journal/remote/remote-some.host.journal</code> 文件中：
    </p><pre class="programlisting">
systemd-journal-remote --url http://some.host:19531/
    </pre><p>
    </p><p>从远程
    <span class="command"><strong>systemd-journal-gatewayd</strong></span>
    实例读取本次启动的日志事件以及后继日志，并将读取到的日志存储在
    <code class="filename">/var/log/journal/remote/remote-some.host.journal</code> 文件中：
    </p><pre class="programlisting">
systemd-journal-remote --url http://some.host:19531/entries?boot&amp;follow
    </pre><p>
    </p></div><div class="refsect1"><a name="id-1.10"></a><h2 id="参见">参见<a class="headerlink" title="Permalink to this headline" href="systemd-journal-remote.service.html#%E5%8F%82%E8%A7%81">¶</a></h2><p>
      <a href="journal-remote.conf.html#"><span class="citerefentry"><span class="refentrytitle">journal-remote.conf</span>(5)</span></a>,
      <a href="journalctl.html#"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
      <a href="systemd-journal-gatewayd.service.html#"><span class="citerefentry"><span class="refentrytitle">systemd-journal-gatewayd.service</span>(8)</span></a>,
      <a href="systemd-journal-upload.service.html#"><span class="citerefentry"><span class="refentrytitle">systemd-journal-upload.service</span>(8)</span></a>,
      <a href="systemd-journald.service.html#"><span class="citerefentry"><span class="refentrytitle">systemd-journald.service</span>(8)</span></a>
    </p></div></div></body></html>
